package com.xiaogao.serviceEdu.client;

import com.xiaogao.commonUtils.Result;
import io.swagger.annotations.ApiParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestParam;

import java.util.List;

/**
 * @author 小高
 * @createtime 2021-06-22-12:46
 * @description
 *
 * @FeignClient注解 用于指定从哪个服务中调用功能，名称与被调用的服务名保持一致。
 * @GetMapping注解 用于对被调用的微服务进行地址映射。
 * @PathVariable注解 一定要指定参数名称，否则出错！！！
 * @Component注解 防止在其他位置注入CodClient时idea报错
 */
@FeignClient(name = "service-vod",fallback = VodFileDegradeFeignClient.class)
@Component
public interface VodClient {

    // 定义调用删除视频的方法路径
    @DeleteMapping("/eduvod/video/removeVideo/{videoId}")
    public Result removeVideo(
            @PathVariable("videoId") String videoId);

    // 定义调用批量删除视频的方法路径
    @DeleteMapping("/eduvod/video/removeVideoList")
    public Result removeVideoList(
            @RequestParam("videoList") List<String> videoList);
}
